Skip to main content

Couchbase Docker Setup

Prerequisites

Requirements
  • Docker should be installed and running
  • Port 8091 should be available for Couchbase Web Console

For detailed Docker installation instructions, please refer to: https://docs.couchbase.com/server/current/install/getting-started-docker.html

Install Couchbase

Run the Couchbase Server container:

Start Couchbase Server
docker run -d --name couchbase -p 8091-8096:8091-8096 -p 11210-11211:11210-11211 couchbase

Configure Couchbase

Access the Couchbase Web Console at: http://localhost:8091

Setup Cluster

Setup Cluster

Click Setup New Cluster to begin the configuration process.

Create your access credentials

Create Access Credentials
Cluster Configuration
  • Cluster Name: You can name the cluster as per your choice (e.g., "FHIR-Cluster")
  • Username: Administrator username for cluster access
  • Password: Choose a strong password - Note this down as you will be using it later when configuring FHIR

Configure Disk, Memory, Services

Configure Disk, Memory, Services
Important

Do not finish with defaults! Instead, choose the Configure option to properly configure the services for FHIR usage.

Set Services Quotas

Set Services Quotas

Configure the services specifically for FHIR usage:

FHIR Service Configuration

Node Settings:

  • Node IP: Leave as 127.0.0.1 (default)

Required Services for FHIR:

  • Data Service - Core document storage
  • Query Service - N1QL queries for FHIR operations
  • Index Service - Primary indexes
  • Search Service - Full-text search capabilities

Memory Allocation:

  • Query Service: Set to 0 (unlimited)
  • Data & Search: Allocate same size (e.g., 1024 MB each)
  • Index Service: Minimal allocation (e.g., 256 MB) - FHIR does not use GSI indexes heavily
Service Selection

FHIR CE primarily uses Data, Query, Index, and Search services. Other services like Analytics and Eventing are not required for basic FHIR functionality.

Create Bucket

Create Bucket

Configure your first FHIR tenant bucket:

FHIR Multi-Tenancy

FHIR CE is multi-tenant - Each bucket represents a separate tenant with isolated data. You need at least one bucket to get started.

Bucket Configuration:

  • Bucket Name: Choose a meaningful name (e.g., "tenant-1", "hospital-a")
  • Memory Quota: Choose size based on your workload requirements
  • Bucket Type: Keep as Couchbase (default)
  • Replicas: Uncheck "Enable Replicas" - This is a single node setup
  • Compression: Enable for better storage efficiency
Bucket Name: fhir-dev
Memory Quota: 512 MB
Replicas: Disabled
Compression: Enabled
Next Steps

After creating your bucket, you're ready to install and configure the FHIR CE server to connect to this Couchbase instance!